//package org.freeswitch.esl.client.test;
//
//import lombok.extern.slf4j.Slf4j;
//import org.freeswitch.esl.client.IEslEventListener;
//import org.freeswitch.esl.client.transport.event.EslEvent;
//import org.springframework.stereotype.Component;
//
//import java.util.concurrent.ThreadPoolExecutor;
//
///**
// * @author qhl
// */
//@Component
//@Slf4j
//public class FsClientManager {
//
//    public static FsClient currentClient;
//
//    /**
//     * 获取客户端，如果客户端不可用，则返回null
//     *
//     * @return
//     */
//    public static FsClient getCurrentClient() {
//        return (currentClient == null || !currentClient.canSend()) ? null : currentClient;
//    }
//
//    /**
//     * 设置fs客户端，如果客户端已连接，则会关闭当前客户端，再重新连接<br>
//     * 该方法会设置对应事件的监听，监听事件查看{@link org.freeswitch.esl.client.test.FsEventType}
//     */
//    public void setCurrentClient(FsClient currentClient) {
//        if (currentClient != null) {
//            try {
//                currentClient.close();
//            } catch (Exception e) {
//                log.error("客户端关闭失败", e);
//            }
//        }
//        try {
//            currentClient = FsClientUtils.createClient(currentClient, fsProperties.getNormal());
//        } catch (Exception e) {
//            log.error("客户端连接失败", e);
//            return;
//        }
//        FsClientUtils.deleteAllEventFilter(currentClient);
//        FsClientUtils.setEventFilter(currentClient, FsEventType.values());
//        log.info("开始注册事件监听器");
//        currentClient.addEventListener(new IEslEventListener() {
//            // 接收监听事件
//            @Override
//            public void eventReceived(EslEvent event) {
//                log.info("事件开始=================={}",event.getEventName());
//            }
//
//            // TODO 暂时不知道作用
//            @Override
//            public void backgroundJobResultReceived(EslEvent eslEvent) {
//            }
//        });
//    }
//
//    public static void main(String[] args) {
//
//    }
//
//}